/*
 * Peralta Santa Anna Victor Miguel
 * Diciembre 2011
 * Stored Procedure:
 *
 * Añadimos un nuevo CV base asociado a un usuario
 */

CREATE OR REPLACE FUNCTION addCV
	(
		nIdUsuario1					INTEGER,
		dFechaActualizacion	 		DATE,
		sObjetivo					VARCHAR,
		dFechaFinalCarrera			DATE,
		sCreditos					VARCHAR,
		sAreasInteres				VARCHAR,
		bDispuestoAViajar			BOOLEAN,
		bDispuestoAReubicarse		BOOLEAN

	) RETURNS INTEGER AS $$
	
	DECLARE llave INTEGER;
	
	BEGIN
	
		INSERT INTO CV 
		( dFechaActualizacion, sObjetivo, dFechaFinalCarrera, sCreditos, sAreasInteres,
		bDispuestoAViajar, bDispuestoAReubicarse )
		
		VALUES 	( dFechaActualizacion, sObjetivo, dFechaFinalCarrera, sCreditos, sAreasInteres,
		bDispuestoAViajar, bDispuestoAReubicarse )
				
		RETURNING nidcv INTO llave;
		
		UPDATE ALUMNOS SET nidcv = llave WHERE Alumnos.nidusuario = nIdusuario1;

		RETURN llave;	
		
		COMMIT;	
	END;
	
$$ LANGUAGE plpgsql;

--select addCV( 1, '02/18/1989', 'Objetivo', '02/18/1989', 'Creditos', 'sAreasInteres', TRUE, FALSE );

